iT邦幫忙

2022 iThome 鐵人賽

DAY 1
0
自我挑戰組

30天演算法解題系列 第 1

Day 01:開始解題之前

  • 分享至 

  • xImage
  •  

去年轉職期間第一次參加鐵人賽,寫了三十篇關於演算法的文章。但因為當時還在認識階段,文章比較多概念上的討論,很少程式碼實戰。也因為這樣,後來在找工作時碰到演算法白板題就慘烈犧牲了...

具體來說,當時準備白板題碰到幾個難題:

  1. 演算法概念知道但想不到,許多時候依然停留在暴力解,根本無所謂進一步優化程式碼。
  2. 有時就算連步驟都知道了,寫出來的程式碼也不太直覺。好像不是很能把文字邏輯轉換為程式碼。
  3. 在 leetcode 或其他網站上刷題,嘗試參考別人的解法,但發現每個人思維、切入點、撰寫習慣都不一樣,很難分析或內化別人的解法。

後來開始看 AlgoExpert 的演算法影片,內容分析得很詳細,並且會提點一些面試可以注意的細節。試了幾題之後,覺得有老師講解學到的東西差超多,可以開始感受到不同解法的差異,還有邏輯概念與程式碼終於比較同步。雖然現在已經沒有立即的找工作壓力,但還是希望可以持續練習,感受演算法的樂趣。

今年的鐵人賽預計大致以題目類型分類 (例如陣列、字串、貪婪演算法...等資料結構或演算法分類),分類很有可能不平均,題目也都會偏簡單,主要是紀錄解題的方法和想法。語言會使用 JavaScript,但同樣概念也都可以換成其他語言。

另外,解題紀錄寫到目前的感想是,很多時候難的並不是解法本身,而是如何用通順的中文表達...很多東西拆解成細節常變得囉唆複雜,這部分還在練習中,希望可以順利傳達每個演算法的想法。


下一篇
Day 02:two number sum
系列文
30天演算法解題30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言